package com.yuyou.fn.report.entity;

import com.github.wens.mybatisplus.annotations.TableField;
import com.github.wens.mybatisplus.annotations.TableId;
import com.github.wens.mybatisplus.annotations.TableName;
import com.github.wens.mybatisplus.examples.Example;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 *
 * 收退费
 *
 */
@TableName(value = "charge")
public class Charge implements Serializable {

	@TableField(exist = false)
	private static final long serialVersionUID = 1L;

	public static Example<Charge> createExample(){
		return new Example<Charge>(Charge.class);
	}

	/**  */
	@TableId(value = "charge_id")
	private String chargeId;

	/** 业务类型 0:报名收费 1:转班退费 2:退班退费 3:众筹押金 4:众筹退费 5:账户提现 6:账户充值 */
	@TableField(value = "bus_type")
	private Integer busType;

	/** 订单号 */
	@TableField(value = "order_id")
	private String orderId;

	/** 订单状态 */
	@TableField(value = "order_status")
	private Integer orderStatus ;

	/** 年份 */
	private Integer year;

	/** 季节 */
	private String season;

	/** 实际支付金额 */
	@TableField(value = "payable_amount")
	private BigDecimal payableAmount;

	/** 实际支付金额 */
	@TableField(value = "paid_amount")
	private BigDecimal paidAmount;

	/** 优惠金额 */
	@TableField(value = "discount_amount")
	private BigDecimal discountAmount;

	/** 支付方式：0-现金；1-刷卡；2-转账；3-账户 4-微信 5-支付宝 */
	@TableField(value = "pay_way")
	private Integer payWay;

	/** 操作人 */
	private String operator;

	/** 优惠说明 */
	@TableField(value = "discount_reason")
	private String discountReason;


	/** 退款方式：0-支付宝，1-微信，2-现金，3-虚拟余额账户 ，4-银行卡转账 */
	@TableField(value = "refund_way")
	private Integer refundWay;

	/** 退款金额 */
	@TableField(value = "refund_amount")
	private BigDecimal refundAmount;

	/** 申请退费时间 */
	@TableField(value = "apply_refund_time")
	private Date applyRefundTime;

	/** 报名校区 */
	@TableField(value = "reg_id")
	private Long regId;

	/** 报名校区 */
	@TableField(value = "reg_campus_id")
	private Long regCampusId;

	/** 报名校区 */
	@TableField(value = "reg_campus")
	private String regCampus;

	/** 收费校区 */
	@TableField(value = "charge_campus_id")
	private Long chargeCampusId;

	/** 收费校区 */
	@TableField(value = "charge_campus")
	private String chargeCampus;

	/**  */
	@TableField(value = "course_id")
	private Long courseId;

	/** 课程名称 */
	@TableField(value = "course_name")
	private String courseName;

	/** 产品ID */
	@TableField(value = "product_id")
	private Long productId;

	/** 产品名称 */
	@TableField(value = "product_name")
	private String productName;

	/** 年级ID */
	@TableField(value = "grade_id")
	private Long gradeId;

	/** 年级名称 */
	@TableField(value = "grade_name")
	private String gradeName;

	/** 科目ID */
	@TableField(value = "subject_id")
	private Long subjectId;

	/** 科目名称 */
	@TableField(value = "subject_name")
	private String subjectName;

	/** 期ID */
	@TableField(value = "period_id")
	private Long periodId;

	/** 期名称 */
	@TableField(value = "period_name")
	private String periodName;

	/**  */
	@TableField(value = "student_id")
	private Long studentId;

	/** 学生姓名 */
	@TableField(value = "student_name")
	private String studentName;

	/** 学生编号 */
	@TableField(value = "student_no")
	private String studentNo;

	/** 学生年级ID */
	@TableField(value = "student_grade_id")
	private Long studentGradeId;

	/** 学生年级名称 */
	@TableField(value = "student_grade_name")
	private String studentGradeName;

	/** 是否是新学生 0:否 1:是 */
	@TableField(value = "is_new_student")
	private Integer isNewStudent;

	/** 学生学校 */
	@TableField(value = "student_school")
	private String studentSchool;

	/** 报名来源 0：线下 1：线上 */
	@TableField(value = "reg_from")
	private Integer regFrom;

	/** 班级ID */
	@TableField(value = "class_id")
	private Long classId;

	/** 班级名称 */
	@TableField(value = "class_name")
	private String className;

	/**  */
	@TableField(value = "area_team_id")
	private Long areaTeamId;

	/**  */
	@TableField(value = "bus_team_id")
	private Long busTeamId;

	/** 区域名称 */
	@TableField(value = "area_team_name")
	private String areaTeamName;

	/** 业务组名称 */
	@TableField(value = "bus_team_name")
	private String busTeamName;

	/** 日结状态 0:未 1:已 */
	@TableField(value = "daily_status")
	private Integer dailyStatus;

	/** 备注 */
	private String remark;

	/**  */
	@TableField(value = "create_time")
	private Date createTime;

	/**  */
	@TableField(value = "update_time")
	private Date updateTime;

	@TableField("daily_operator_id")
	private Long dailyOperatorId ;

	@TableField("daily_operator")
	private String dailyOperator;

	@TableField("pay_channel_transaction_no")
	private String payChannelTransactionNo ;

	public Long getRegId() {
		return regId;
	}

	public void setRegId(Long regId) {
		this.regId = regId;
	}

	public String getChargeId() {
		return this.chargeId;
	}

	public void setChargeId(String chargeId) {
		this.chargeId = chargeId;
	}

	public Integer getBusType() {
		return this.busType;
	}

	public void setBusType(Integer busType) {
		this.busType = busType;
	}

	public String getOrderId() {
		return this.orderId;
	}

	public void setOrderId(String orderId) {
		this.orderId = orderId;
	}

	public Integer getYear() {
		return this.year;
	}

	public void setYear(Integer year) {
		this.year = year;
	}

	public String getSeason() {
		return this.season;
	}

	public void setSeason(String season) {
		this.season = season;
	}

	public BigDecimal getPaidAmount() {
		return this.paidAmount;
	}

	public void setPaidAmount(BigDecimal paidAmount) {
		this.paidAmount = paidAmount;
	}

	public BigDecimal getDiscountAmount() {
		return this.discountAmount;
	}

	public void setDiscountAmount(BigDecimal discountAmount) {
		this.discountAmount = discountAmount;
	}

	public Integer getPayWay() {
		return this.payWay;
	}

	public void setPayWay(Integer payWay) {
		this.payWay = payWay;
	}

	public String getOperator() {
		return this.operator;
	}

	public void setOperator(String operator) {
		this.operator = operator;
	}

	public String getDiscountReason() {
		return this.discountReason;
	}

	public void setDiscountReason(String discountReason) {
		this.discountReason = discountReason;
	}

	public Integer getRefundWay() {
		return this.refundWay;
	}

	public void setRefundWay(Integer refundWay) {
		this.refundWay = refundWay;
	}

	public BigDecimal getRefundAmount() {
		return this.refundAmount;
	}

	public void setRefundAmount(BigDecimal refundAmount) {
		this.refundAmount = refundAmount;
	}

	public Date getApplyRefundTime() {
		return this.applyRefundTime;
	}

	public void setApplyRefundTime(Date applyRefundTime) {
		this.applyRefundTime = applyRefundTime;
	}

	public Long getRegCampusId() {
		return this.regCampusId;
	}

	public void setRegCampusId(Long regCampusId) {
		this.regCampusId = regCampusId;
	}

	public String getRegCampus() {
		return this.regCampus;
	}

	public void setRegCampus(String regCampus) {
		this.regCampus = regCampus;
	}

	public Long getChargeCampusId() {
		return this.chargeCampusId;
	}

	public void setChargeCampusId(Long chargeCampusId) {
		this.chargeCampusId = chargeCampusId;
	}

	public String getChargeCampus() {
		return this.chargeCampus;
	}

	public void setChargeCampus(String chargeCampus) {
		this.chargeCampus = chargeCampus;
	}

	public Long getCourseId() {
		return this.courseId;
	}

	public void setCourseId(Long courseId) {
		this.courseId = courseId;
	}

	public String getCourseName() {
		return this.courseName;
	}

	public void setCourseName(String courseName) {
		this.courseName = courseName;
	}

	public Long getProductId() {
		return this.productId;
	}

	public void setProductId(Long productId) {
		this.productId = productId;
	}

	public String getProductName() {
		return this.productName;
	}

	public void setProductName(String productName) {
		this.productName = productName;
	}

	public Long getGradeId() {
		return this.gradeId;
	}

	public void setGradeId(Long gradeId) {
		this.gradeId = gradeId;
	}

	public String getGradeName() {
		return this.gradeName;
	}

	public void setGradeName(String gradeName) {
		this.gradeName = gradeName;
	}

	public Long getSubjectId() {
		return this.subjectId;
	}

	public void setSubjectId(Long subjectId) {
		this.subjectId = subjectId;
	}

	public String getSubjectName() {
		return this.subjectName;
	}

	public void setSubjectName(String subjectName) {
		this.subjectName = subjectName;
	}

	public Long getPeriodId() {
		return this.periodId;
	}

	public void setPeriodId(Long periodId) {
		this.periodId = periodId;
	}

	public String getPeriodName() {
		return this.periodName;
	}

	public void setPeriodName(String periodName) {
		this.periodName = periodName;
	}

	public Long getStudentId() {
		return this.studentId;
	}

	public void setStudentId(Long studentId) {
		this.studentId = studentId;
	}

	public String getStudentName() {
		return this.studentName;
	}

	public void setStudentName(String studentName) {
		this.studentName = studentName;
	}

	public String getStudentNo() {
		return this.studentNo;
	}

	public void setStudentNo(String studentNo) {
		this.studentNo = studentNo;
	}

	public Long getStudentGradeId() {
		return this.studentGradeId;
	}

	public void setStudentGradeId(Long studentGradeId) {
		this.studentGradeId = studentGradeId;
	}

	public String getStudentGradeName() {
		return this.studentGradeName;
	}

	public void setStudentGradeName(String studentGradeName) {
		this.studentGradeName = studentGradeName;
	}

	public Integer getIsNewStudent() {
		return this.isNewStudent;
	}

	public void setIsNewStudent(Integer isNewStudent) {
		this.isNewStudent = isNewStudent;
	}

	public String getStudentSchool() {
		return this.studentSchool;
	}

	public void setStudentSchool(String studentSchool) {
		this.studentSchool = studentSchool;
	}

	public Integer getRegFrom() {
		return this.regFrom;
	}

	public void setRegFrom(Integer regFrom) {
		this.regFrom = regFrom;
	}

	public Long getClassId() {
		return this.classId;
	}

	public void setClassId(Long classId) {
		this.classId = classId;
	}

	public String getClassName() {
		return this.className;
	}

	public void setClassName(String className) {
		this.className = className;
	}

	public Long getAreaTeamId() {
		return this.areaTeamId;
	}

	public void setAreaTeamId(Long areaTeamId) {
		this.areaTeamId = areaTeamId;
	}

	public Long getBusTeamId() {
		return this.busTeamId;
	}

	public void setBusTeamId(Long busTeamId) {
		this.busTeamId = busTeamId;
	}

	public String getAreaTeamName() {
		return this.areaTeamName;
	}

	public void setAreaTeamName(String areaTeamName) {
		this.areaTeamName = areaTeamName;
	}

	public String getBusTeamName() {
		return this.busTeamName;
	}

	public void setBusTeamName(String busTeamName) {
		this.busTeamName = busTeamName;
	}

	public Integer getDailyStatus() {
		return this.dailyStatus;
	}

	public void setDailyStatus(Integer dailyStatus) {
		this.dailyStatus = dailyStatus;
	}

	public String getRemark() {
		return this.remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public Date getCreateTime() {
		return this.createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getUpdateTime() {
		return this.updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public Integer getOrderStatus() {
		return orderStatus;
	}

	public void setOrderStatus(Integer orderStatus) {
		this.orderStatus = orderStatus;
	}

	public BigDecimal getPayableAmount() {
		return payableAmount;
	}

	public void setPayableAmount(BigDecimal payableAmount) {
		this.payableAmount = payableAmount;
	}

	public Long getDailyOperatorId() {
		return dailyOperatorId;
	}

	public void setDailyOperatorId(Long dailyOperatorId) {
		this.dailyOperatorId = dailyOperatorId;
	}

	public String getDailyOperator() {
		return dailyOperator;
	}

	public void setDailyOperator(String dailyOperator) {
		this.dailyOperator = dailyOperator;
	}

	public String getPayChannelTransactionNo() {
		return payChannelTransactionNo;
	}

	public void setPayChannelTransactionNo(String payChannelTransactionNo) {
		this.payChannelTransactionNo = payChannelTransactionNo;
	}
}
